//------------------------------------------------------------------------------
// <copyright file="HeroPrintingOptions.cs" company="Damian Antonowicz">
//       copyright © 2010 Damian Antonowicz
// </copyright>
// <author>Damian Antonowicz</author>
// <email>poczta@damianantonowicz.pl</email>
//------------------------------------------------------------------------------

using System.Collections.Generic;
using System.Linq;

namespace DotBeer.Business.Entities
{
    public class HeroPrintingSettings
    {
        #region private members

        Hero hero;
        List<BuildPrintingOptions<ItemBuild>> itemBuilds;
        List<BuildPrintingOptions<SkillBuild>> skillBuilds;

        #endregion

        #region constructors

        public HeroPrintingSettings(Hero hero)
        {
            this.hero = hero;

            itemBuilds = new List<BuildPrintingOptions<ItemBuild>>();
            skillBuilds = new List<BuildPrintingOptions<SkillBuild>>();

            var items = this.hero.ItemBuilds.Select(build => new BuildPrintingOptions<ItemBuild>() { Build = build, Print = true });
            this.itemBuilds.AddRange(items);

            var skills = this.hero.SkillBuilds.Select(build => new BuildPrintingOptions<SkillBuild>() { Build = build, Print = true });
            this.skillBuilds.AddRange(skills);
        }

        #endregion

        #region properties

        public IEnumerable<BuildPrintingOptions<ItemBuild>> ItemBuilds
        {
            get { return this.itemBuilds; }
        }

        public IEnumerable<BuildPrintingOptions<SkillBuild>> SkillBuilds
        {
            get { return this.skillBuilds; }
        }

        public Hero Hero
        {
            get { return this.hero; }
        }

        #endregion

        #region public methods



        #endregion

        #region private methods



        #endregion
    }
}
